package com.xyy.saas.payment.query.core.trade.impl;

import com.xyy.saas.payment.cores.bo.TransactionResultBO;
import com.xyy.saas.payment.cores.enums.TransactionStatusEnum;
import com.xyy.saas.payment.cores.enums.TransactionTypeEnum;
import com.xyy.saas.payment.cores.param.TransactionParam;
import com.xyy.saas.payment.cores.vo.ResultVO;
import com.xyy.saas.payment.query.core.trade.AbstractTransactionQuery;

public class DefaultTransactionQuery extends AbstractTransactionQuery {

    @Override
    protected ResultVO checkParam(TransactionParam param) {
        return ResultVO.createSuccess();
    }

    @Override
    protected TransactionResultBO queryLocalRecord(TransactionParam param) {
        return TransactionResultBO.build(param.getTradeNo(), TransactionStatusEnum.NOT_FOUNT.getCode());
    }

    @Override
    protected boolean checkIfQueryChannel(TransactionResultBO resultBO) {
        return false;
    }

    @Override
    protected TransactionResultBO queryChannelRecord(TransactionParam param) {
        return null;
    }

    @Override
    protected void processChannelRecord(TransactionParam param, TransactionResultBO channelRecord) {

    }

    @Override
    public TransactionTypeEnum getTransactionType() {
        return null;
    }
}
